﻿// ------------------------------------------------------------------------------
// <copyright file="Global.cs" company="skumaronline.com">
//    Copyright (C) 2012 Suresh Kumar T.  All rights reserved.
// </copyright>
// ------------------------------------------------------------------------------

namespace StoreAppLib.MetaData
{
    /// <summary>
    /// The activator delegate
    /// </summary>
    /// <returns>The activator</returns>
    public delegate object Activator();

    /// <summary>
    /// Add to collection delegate
    /// </summary>
    /// <param name="instance">The instance</param>
    /// <param name="item">The item</param>
    public delegate void AddToCollection(object instance, object item);

    /// <summary>
    /// Add to dictionary delegate
    /// </summary>
    /// <param name="instance">The instance</param>
    /// <param name="key">The key</param>
    /// <param name="item">The item</param>
    public delegate void AddToDictionary(object instance, object key, object item);

    /// <summary>
    /// The getter delegate
    /// </summary>
    /// <param name="instance">The instance</param>
    /// <returns>The value</returns>
    public delegate object Getter(object instance);

    /// <summary>
    /// The setter delegate
    /// </summary>
    /// <param name="instance">The instance</param>
    /// <param name="value">The value</param>
    public delegate void Setter(object instance, object value);
}
